//头文件
#include <ros/ros.h>

//msg 头文件
#include <sensor_msgs/Imu.h>
#include <geometry_msgs/PoseStamped.h>
#include "message_utils.h"

using namespace std;
//---------------------------------------相关参数-----------------------------------------------
string mav_name;
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>回调函数<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
void msg_main_cb(const uav_drone_msgs::Message::ConstPtr& msg)
{
    uav_drone_msgs::Message message = *msg;
    printf_message(message);
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>主 函 数<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
int main(int argc, char **argv)
{
    ros::init(argc, argv, "ground_station_msg");
    ros::NodeHandle nh("~");
    nh.param<string>("mav_name", mav_name, "firefly");
    // 【订阅】 各类消息
    ros::Subscriber message_main_sub = nh.subscribe<uav_drone_msgs::Message>("/"+mav_name+"/message/main", 10, msg_main_cb);
    // 频率
    ros::Rate rate(1.0);


//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Main Loop<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    while(ros::ok())
    {
        //回调一次 更新传感器状态
        ros::spinOnce();


        rate.sleep();
    }

    return 0;

}